package io.adrainty.bolee.security.repository;

import com.baomidou.mybatisplus.core.metadata.IPage;
import io.adrainty.bolee.security.models.entity.PostEntity;

import java.util.List;

/**
 * @author AdRainty
 * @version V1.0.0
 * @since 2025/8/12 上午12:25
 */
public interface IPostRepository {

    /**
     * 分页查询岗位
     *
     * @param pageNum  页码
     * @param pageSize 页大小
     * @param entity   查询条件
     * @return IPage<PostEntity>
     */
    IPage<PostEntity> pagePost(Integer pageNum, Integer pageSize, PostEntity entity);

    /**
     * 创建岗位
     *
     * @param entity 岗位信息
     * @return Boolean
     */
    boolean createPost(PostEntity entity);

    /**
     * 创建岗位
     *
     * @param entity 岗位信息
     * @return PostEntity
     */
    boolean updatePost(PostEntity entity);

    /**
     * 获取岗位列表
     *
     * @param entity 查询条件
     * @return List<PostEntity>
     */
    List<PostEntity> listPost(PostEntity entity);

    /**
     * 获取部门岗位列表
     *
     * @param deptNo 部门编号
     * @return List<PostEntity>
     */
    List<PostEntity> getDeptPostList(String deptNo);


}
